// 创建组件相关的小仓库
import { defineStore } from 'pinia'
import { ref } from 'vue'
import { reqTeacherGetInfo } from '@/api/teacher'

// 创建user组件相关的小仓库
const useTeacherStore = defineStore(
  'teacher',
  () => {
    // 教师token
    const token = ref(
      JSON.parse(localStorage.getItem('User') || '{}').token || '',
    )
    // 教师个人信息
    const teacherInfo = ref({})

    // 获取教师个人信息
    const teacherGetInfo = async () => {
      const res = await reqTeacherGetInfo()
      if (res.code === 200) {
        teacherInfo.value = res.data
      } else {
        ElMessage.error('个人信息获取失败')
      }
    }

    return { token, teacherInfo, teacherGetInfo }
  },
  {
    // 开启数据持久化
    persist: {
      key: 'User', // 可以自定义存储的key值
      paths: ['token'], // 指定只持久化token属性
    },
  },
)

export default useTeacherStore
